#include<bits/stdc++.h>
using namespace std;
typedef long long ll;

void solve(){
    int n,m;
    cin>>n>>m;
    vector<int> a(n),b;
    bool f=true;
    for(int i=0;i<n;i++){
    	char c;
    	cin>>c;
    	if(c=='1')f=false;
    	a[i]=c-'0';
    }

    for(int i=0;i<m;i++){
    	char c;
    	cin>>c;
    	if(c=='1')b.push_back(i);
    }

    if(f){
    	cout<<0<<'\n';
    	return;
    }
    if(n<m||b.empty()){
    	cout<<-1<<'\n';
    	return;
    }
    ll cnt=0;
    for(int i=0;i<n-m+1;i++){
    	if(a[i+b[0]]==1){
    		for(int j=0;j<b.size();j++){
    			a[i+b[j]]^=1;
    		}
    		cnt++;
    	}
    }
    for(int i=0;i<n;i++){
    	if(a[i]==1){
    		cout<<-1<<'\n';
    		return;
    	}
    }
    cout<<cnt<<'\n';
}

int main(){
    ios::sync_with_stdio(0);
    cin.tie(0),cout.tie(0);
    int t=1;
    cin>>t;
    while(t--){
        solve();
    }
    return 0;
}